package com.xoms.admin.service;

import com.xoms.admin.controller.res.bean.RAuditBreakageBean;
import com.xoms.admin.controller.res.bean.RAuditCheckBean;
import com.xoms.admin.controller.res.bean.RAuditPurchaseBean;
import com.xoms.admin.controller.res.bean.RAuditPureBackBean;
import com.xoms.admin.controller.res.bean.RAuditStockInBean;
import com.xoms.admin.controller.res.bean.RProAuditBean;
import com.xoms.admin.model.AccountBean;
import com.xoms.admin.service.res.PageResult;

/**
 * 商品业务层接口
 * @author chengl
 *
 */
public interface ProAuditService {
	
	/**
	 * 获取审核列表
	 * @param account
	 * @param type
	 * @param page
	 * @param pageSize
	 * @param startTime
	 * @param endTime
	 * @return
	 */
	PageResult<RProAuditBean> getProAudits(AccountBean account, int type, int page, int pageSize, String startTime,
			String endTime);
	
	/**
	 * 获取个人审核记录
	 * @param account
	 * @param type
	 * @param endTime 
	 * @param startTime 
	 * @param pageSize 
	 * @param page 
	 * @return
	 */
	PageResult<RProAuditBean> getProAudits4Acc(AccountBean account, int type, int page, int pageSize, String startTime, String endTime);
	
	/**
	 * 根据类型审核不同，进行不同操作审核
	 * @param account
	 * @param aid
	 * @param status
	 * @param remark
	 * @return
	 */
	boolean audit(AccountBean account, String aid, int status, String remark);
	
	/**
	 * 获取采购信息和审核详情列表
	 * @param account
	 * @param aid
	 * @return
	 */
	RAuditPurchaseBean getPurchase(AccountBean account, String aid);
	
	/**
	 * 获取审核信息和入库详情列表
	 * @param account
	 * @param aid
	 * @return
	 */
	RAuditStockInBean getStockIn(AccountBean account, String aid);
	
	/**
	 * 获取审核信息和报损详情列表
	 * @param account
	 * @param aid
	 * @return
	 */
	RAuditBreakageBean getBreakage(AccountBean account, String aid);
	
	/**
	 * 获取审核信息和盘库详情列表
	 * @param account
	 * @param aid
	 * @return
	 */
	RAuditCheckBean getCheck(AccountBean account, String aid);
	
	/**
	 * 获取审核信息和退货信息列表
	 * @param account
	 * @param aid
	 * @return
	 */
	RAuditPureBackBean getPureBack(AccountBean account, String aid);
	

}
